Method and apparatus for gaming promotional printer

ABSTRACT

A method and apparatus for a promotional printer for use within a cashless enabled gaming machine or vending machine are disclosed. A promotional printer includes a coupon database describing a stack of coupons that are specified using a template based couponing printer language. A coupon is selected for creation and issued to a user or player based on a matrix of event-based triggers involving factors or parameters known to the promotional printer directly or supplied by a master promotional controller. Triggers may include the time of day, the date or amount of a cash-out voucher to be issued to the user or player, the duration of play on a gaming machine, a player classification, the amount of money or credits added to a game, or a random frequency of coupon issuance having satisfied any or all of the aforementioned factors. The promotional printer may further include the ability to store all of the coupons, trigger conditions, and related information resident in the promotional printer in a non-volatile fashion thus enabling a host system to download a promotional environment into the promotional printer which will run promotional campaigns on behalf of the hosting system.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation-in-part of U.S. application Ser. No.10/405,112 filed Mar. 31, 2003 which claims the benefit of U.S.Provisional Patent Application No. 60/369,097, filed Mar. 29, 2002, andis related to U.S. application Ser. No. 10/434,307 filed May 7, 2003which claims the benefit of U.S. Provisional Patent Application No.60/378,491, filed May 7, 2002, the contents of each of which are herebyincorporated by reference as if fully stated herein.

BACKGROUND OF THE INVENTION

This invention relates generally to gaming and vending printers and morespecifically to gaming and vending printers performing promotionalcoupon printing.

The gaming machine manufacturing industry provides a variety of gamingmachines for the amusement of gambling players. An exemplary gamingmachine is a slot machine. A slot machine is an electromechanical gamewherein chance or the skill of a player determines the outcome of thegame. Slot machines are usually found in casinos or other more informalgaming establishments.

Gaming machine manufacturers have more recently introduced cashlessenabled gaming machines to the market and these have begun to find wideacceptance in the gaming industry. Cashless enabled gaming machines areso named because they can conduct financial exchanges using a mixture oftraditional currencies and vouchers. Typically, a cashless enabledgaming machine has a gaming printer to produce vouchers and a billacceptor that supports automatic reading of vouchers. To coordinate theactivities of multiple cashless enabled gaming machines, one or morecashless enabled gaming machines may be electronically coupled to acashless enabled gaming machine system that controls the cashlessoperations of a cashless enabled gaming machine.

When a player cashes out using a cashless enabled gaming machine coupledto a cashless enabled gaming machine system, the cashless enabled gamingmachine signals the system and the system may determine the type of payout presented to the player. Depending on the size of the pay out, thecashless enabled gaming machine system may cause the cashless enabledgaming machine to present coins in the traditional method of a slotmachine, or the cashless enabled gaming machine system may cause agaming printer in the cashless enabled gaming machine to produce avoucher for the value of the pay out. The voucher may then be redeemedin a variety of ways. For example, the voucher may be redeemed for cashat a cashier's cage or used with another cashless enabled gamingmachine. In order to use the voucher in a cashless enabled gamingmachine, the voucher is inserted into a bill acceptor of anothercashless enabled gaming machine at a participating casino and thecashless enabled gaming machine system recognizes the voucher, redeemsthe voucher, and places an appropriate amount of playing credits on thecashless enabled gaming machine.

Cashless enabled gaming machines have found an increasing acceptance anduse in the gaming industry with players who enjoy the speed of play andease of transporting their winnings around the casino and the casinoswho have realized significant labor savings in the form of reduced coinhopper reloads in the games, and an increase in revenue because of thespeed of play. This increasing acceptance practically guarantees a wideinstalled base of networked games with captive player audiences forissuance of coupons and promotional tickets using generally the sameequipment already installed within a cashless enabled gaming machinesystem for the purpose of supporting cashless gaming vouchers. Inaddition, vending machine manufacturers have increasingly addedadditional printing features to their vending machines.

SUMMARY OF THE INVENTION

In one aspect of the invention, a promotional printer for use within acashless enabled gaming machine or vending machine controls printing ofcoupons the promotional printer includes a coupon database describing astack of coupons that are specified using a template based couponingprinter language. A coupon is selected for creation and issued to a useror player based on a matrix of event-based triggers involving factors orparameters known to the promotional printer directly or supplied by amaster promotional controller. Triggers may include the time of day, thedate or amount of a cash-out voucher to be issued to the user or player,the duration of play on a gaming machine, a player classification, theamount of money or credits added to a game, or a random frequency ofcoupon issuance having satisfied any or all of the aforementionedfactors. The promotional printer may further include the ability tostore all of the coupons, trigger conditions, and related informationresident in the promotional printer in a non-volatile fashion thusenabling a host system to download a promotional environment into thepromotional printer which will run promotional campaigns on behalf ofthe hosting system.

In one aspect of the invention, a method of printing a promotionalcoupon in a gaming environment includes receiving coupon data by apromotional printer in a cashless enabled game from a promotionalcontroller via a communications network. The coupon data includes acoupon description written in a template definition language. Thepromotional printer then generates the coupon using variable data andthe coupon template in response to a trigger.

In another aspect of the invention, the variable data is received by thepromotional printer from the promotional controller via thecommunications network. In this aspect, the promotional controllergenerates the trigger and transmits the trigger to the promotionalprinter via the communications network.

In another aspect of the invention, the coupon data includes triggercontrol parameters and the trigger is generated by the promotionalprinter using the trigger control parameters and trigger data. Thetrigger data may include a date, a time of day, a frequency of issuanceof the coupon, or a time of play by a player of a gaming machine.

In another aspect of the invention, the promotional printer is furthercoupled to a gaming or vending machine controller and the trigger datais received by the promotional printer from the machine controller. Thetrigger data may include a player identifier, an amount of money in playon a gaming machine, a duration of a current session of play of a gamingmachine, a cash-in of a player or a cash-out of a player.

In another aspect of the invention, coupon issuance data is stored bythe promotional printer and the coupon issuance data is transmitted bythe promotional printer to the promotional controller via thecommunications network.

In another aspect of the invention, a promotional controller transmitscoupon data to a promotional printer via a communications network withthe coupon data including a coupon template. The promotional controllertransmits variable data and trigger data to the promotional printer viathe communications network. In response to the transmission, thepromotional printer generates a coupon using the coupon template and thevariable data.

In another aspect of the invention, the promotional printer

In another aspect of the invention, the promotional printer storescoupon issuance data and the promotional controller receives the couponissuance data by the promotional controller from the promotional printervia the communications network.

In another aspect of the invention, a promotional printer comprises aprocessor and a memory coupled to the processor. The memory has storedprogram instructions executable by the processor where the programinstructions include receiving coupon data including a coupon templatefrom a promotional controller via a communications network. The programinstructions for the promotional printer also include instructions forgenerating a coupon using variable data and the coupon template inresponse to a trigger.

In another aspect of the invention, a promotional controller includes aprocessor and a memory coupled to the processor. Program instructionsfor implementing the features of a promotional controller are stored inthe memory and are executable by the processor. The program instructionsinclude: transmitting coupon data to a promotional printer via acommunications network wherein the coupon data includes a coupontemplate; transmitting variable data to the promotional printer via thecommunications network; and transmitting trigger data to the promotionalprinter whereby the promotional printer generates a coupon using thecoupon template and the variable data in response to the trigger data.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features, aspects, and advantages of the presentinvention will become better understood with regard to the followingdescription, appended claims, and accompanying drawings where:

FIG. 1 is block diagram illustrating a gaming environment employingcoupon issuance in accordance with an exemplary embodiment of thepresent invention;

FIG. 2 is a deployment diagram of a coupon issuing system in accordancewith an exemplary embodiment of the present invention;

FIG. 3 is an illustration of a coupon including logical fields describedin a template based printer language in accordance with an exemplaryembodiment of the present invention;

FIG. 4 is a block diagram of coupon template field elements storedpartially resident in a promotional gaming printer and partiallysupplied by a master promotional controller at the time of print andissue in accordance with an exemplary embodiment of the presentinvention;

FIG. 5 is a block diagram of an exemplary coupon “stack” and logicaltrigger matrix resident in a promotional printer in accordance with anexemplary embodiment of the present invention;

FIG. 6 is a process flow diagram of a coupon generation process inaccordance with an exemplary embodiment of the present invention;

FIG. 7 is a sequence diagram of a coupon generating process inaccordance with an exemplary embodiment of the present invention;

FIG. 8 is an architecture diagram of an exemplary promotional gamingprinter in accordance with an exemplary embodiment of the presentinvention;

FIG. 9 is an architecture diagram of an exemplary master promotionalcontroller in accordance with an exemplary embodiment of the presentinvention;

FIG. 10 a is a block diagram of a gaming or vending machineincorporating a multidrop communications network in accordance with anexemplary embodiment of the present invention;

FIG. 10 b is a block diagram of a gaming or vending machineincorporating a point-to-point communications system in accordance withan exemplary embodiment of the present invention; and

FIG. 11 is a sequence diagram of a promotional module using passivelistening to generate coupon triggers.

DETAILED DESCRIPTION

FIG. 1 is block diagram illustrating a gaming environment employingcouponing in accordance with an exemplary embodiment of the presentinvention. A player 100 uses a cashless enabled gaming machine 102 toplay a gambling game or game of skill. As the player plays the game, amaster promotional controller 104 coupled to one or more cashlessenabled gaming machines through a communications network 106 triggersthe generation of promotional coupons 108 for use by the player. Thepromotional coupons are generated by a promotional gaming printer 109included in a cashless enabled gaming machine. The master promotionalcontroller can either be a controller network connected to one or morepromotional printers, a controller within a cashless enabled gamingmachine or promotional printer, or an intelligent routing and managementdevice for one or more promotional printers. In one embodiment of amaster promotional controller, the master promotional controller directsthe promotional activity of the promotional printers via directpromotional coupon requests. In another embodiment of a masterpromotional controller, the master promotional controller uses acashless enabled gaming machine's promotional printer to storepromotional coupon databases and triggers.

Once a promotional coupon has been issued by a promotional printer, thepromotional coupon may be redeemed with a human operator or cashier 110,or redeemed automatically through a another redemption device, such as abill acceptor in another cashless enabled gaming machine 112, orredeemed at a kiosk 114 which is not a game but provides some other formof automatic interface for a promotional coupon holder.

In one embodiment of a master promotional controller, the masterpromotional controller is coupled to the redemption devices. In anotherembodiment of an master promotional controller, a non-game kiosk orcasino personnel may or may not interface back to the master promotionalcontroller when redeeming a promotional coupon. Information relative tocouponing activity is exchanged with the master promotional controller,the net result being the promotional printers fitting into the system asdistributed intelligent sub-units, significantly off-loading the masterpromotional controller's real time servicing requirements and avoidingnetwork bandwidth issues associated with live streaming of promotionalcoupons during a relatively short cash-out time window.

In one gaming environment employing couponing in accordance with anexemplary embodiment of the present invention, each promotional printerin the gaming environment has a unique address or identifier so that apopulation of promotional printers on the network can be addressed inwhole or individually for promotional purposes.

FIG. 2 is a deployment diagram of a couponing system in accordance withan exemplary embodiment of the present invention. In a couponing system,a master promotional controller 104 is coupled to one or more cashlessenabled gaming or vending machines, as illustrated by cashless enabledgaming machine 102, through a communications network 106 by coupling toa promotional printer 109 included in the cashless enabled gamingmachine. The master promotional controller is programmable and includesmaster promotional controller programming instructions 201 controllingthe master promotional controllers operations including communicationswith the promotional printer.

In one promotional printer in accordance with an exemplary embodiment ofthe present invention, a stand alone promotional printer includes all ofthe necessary processing capabilities, memory, and promotional printerprogramming instructions 209 needed to perform promotional couponingoperations for the cashless enabled gaming or vending machine. In otherembodiments of promotional printers, a promotional printer is created bycoupling a promotional module 210 to a conventional gaming printer,enabling the gaming printer to function as a promotional printer. Astandalone gaming or vending promotional printer or a promotionalprinter created from a conventional gaming or vending printer coupled toa promotional module are hereinafter termed either a “promotionalprinter” or a “promotional module.”

The master promotional controller may be coupled to a vending or gamingmachine controller 204 included in the cashless enabled gaming machine.By coupling to a machine controller, the master promotional controllermay receive information from the machine controller about the gamingoperations of the cashless enabled gaming or vending machine separatelyfrom the promotional printer printing operations.

The cashless enabled gaming or vending machine may also include a billacceptor 206 coupled to the machine controller. A cashless enabledgaming or vending machine uses a bill acceptor for redemption ofpromotional coupons and acceptance of vouchers or cash.

In operation, the master promotional controller transmits packets ofvariable data or coupon data describing a promotional database to thepromotional printer. The contents of the promotional database includedescriptions of a plurality of promotional coupons, cash vouchers,advertisements or other enticements which are hereinafter collectivelyreferred to as “coupons”. The promotional printer receives thepromotional database and stores the promotional database in thepromotional printer's local memory.

The promotional printer also stores specifications of how to print thecoupons in its local memory. The specifications of the coupons arestored as templates written in a template based printer language. Thisallows the coupons to be pre-defined, formatted, and stored in thepromotional printer completely or partially for later recall.

Upon reception of a trigger data signal from either the masterpromotional controller or the machine controller, the promotionalprinter references and parses the promotional database and coupontemplates to generate and issue promotional coupons or tickets printedon paper media. The paper media may be used specifically for the purposeof generating promotional coupons, or the paper media may be used forthe purpose of printing pay out vouchers associated with cashlessgaming.

FIG. 10 a is a block diagram of a gaming or vending machineincorporating a multidrop communications network in accordance with anexemplary embodiment of the present invention. A gaming or vendingmachine may employ a multidrop communications network 1002 to routecommunications between a machine controller 204 and various devices inthe gaming or vending machine. In this embodiment of a gaming or vendingmachine, the machine controller communicates with a bill acceptor 206, apromotional printer 109, a promotional module 210, and other gaming orvending machine devices 1000 over the multidrop network. In such anetwork, each specific device or controller has a unique address. Thespecific device or controller listens to all the messages sent throughthe network by the various controllers and devices on the network butmay only respond to messages that are addressed to that specific device.As such, the promotional module may passively “listen in” on gaming orvending machine operational signals, such as messages meant for theother devices, by receiving messages intended for the other devices andnot responding to any message not intended for the promotional module.In this way, the promotional module can determine the state of thegaming or vending machine as the gaming or vending machine operates byexamining communications between the disparate devices.

FIG. 10 b is a block diagram of a gaming or vending machineincorporating a point-to-point communications system in accordance withan exemplary embodiment of the present invention. In this embodiment ofa gaming or vending machine, a machine controller 204 is coupled to thevarious devices, such as bill acceptor 206, promotional printer 109, andother such gaming or vending machine devices 1000, incorporated into thegaming or vending machine by one or more point-to-point communicationslinks 1004. As each device has it's own communications link with themachine controller, a gaming promotional controller has no opportunityto listen in on a network communications. Instead, a promotional module210 listens in on communications between the disparate devices byreceiving one or more communications signals 1006 gleaned from one ormore listening taps 1008 installed on the devices.

The taps may be passive devices that merely duplicate the signals beingtransmitted between the devices or controller. If the taps are passivedevices, the promotional module discerns which communications are beingsent by which devices. To do so, the promotional module may parse amessage and determine from the contents of the message which device sentthe message. The promotional module may also incorporate one or morecommunications ports with each port assigned to a specific device. Thepromotional module may then identify the specific device transmitting amessage by simply knowing which communications port received themessage.

The taps may also be active devices. In this case, a tap may add aheader to any messages transmitted to or from a device to which the tapis coupled, thereby associating each message with a device identifier.

FIG. 3 is an illustration of a coupon including logical fields describedin a template based printer language in accordance with an exemplaryembodiment of the present invention. In this example, a coupon may 300include four types of data fields: text fields, such as text field 302;barcode fields, such as barcode field 304; graphic fields, such asgraphic field 306; and line/box draw fields, such as line/box draw field308. The fields of a coupon are described using coupon description dataincluded in an electronic template that may be stored by a promotionalprinter. A template may include a plurality of fields in combination,resulting in a paste-up style printed coupon. A plurality of templatesdescribing different types of coupons may be stored in a promotionalprinter supporting a rich couponing environment.

The actual value or data for each of the fields described in a coupontemplate may or may not be included in the template itself. For example,a template may include a barcode field for printing a barcode 310.However, the actual value of the barcode is transmitted to a promotionalprinter at the time a coupon is generated using the coupon template. Inthis way, a coupon may have fields that include static data, such asgraphic 312 in a graphic field, or dynamic data, such as the name of aparticular patron 314 in a text field. In this way, customized couponsmay be printed by a promotional printer without transferring largeamounts of data through a communications network coupling a promotionalprinter to a master promotional controller.

In addition, data that is used to track usage of coupons may be includedin a coupon. For example, a barcode field or a text field may be used toprint a barcode value or text string uniquely identifying a coupon. Inthis way, a gaming provisional printer creates an image of a barcode orbarcodes, characters or marks that may be read by a cashless enabledgaming or vending machine bill acceptor on the same or another cashlessenabled gaming or vending machine, allowing automatic acceptance ofcoupons into a cashless enabled gaming system in a casino or anotherrelated casino property.

A coupon template includes a plurality of command strings. Each commandstring conforms to the following syntax:delimiter<cmd_Ltr>|<data_field1>|....|<data_fieldx>|delimeter; comment

where: delimiter = a delimiter character <cmd_ltr> =  command identifierletter <data_fields1-x> = fields which include information relative tothe command | = Pipe character. This serves as the delimiter betweendata fields in a command. ; = Semi-colon. This is a comment fielddesignator.

delimiter< template_cmd_ltr> | <t_id> | <targ_mem> | <t_dim_da> |<t_dim_pa> | <pr#1> | <pr#2> | ... | <pr#n> |delimiter

where: <t_id> =  Template I.D. <targ_mem> =  target memory storage.<t_dim_da> =  Template dimension on a dotline axis in dots.<t_dim_pa> =  Template dimension in dots in the paper axis.<pr#1>...<pr#n> =  list of coupon database resident print regions ID'sused in the format of this coupon.

-   -   These fields are the method by which print regions used on a        coupon are linked together and to the coupon template.

A print region is a print field used in a template to format print data.The print region command is used to define the basic types of printregions such as text, barcode, graphics, and a line/box draw.

A define print region command defines the particular font, barcode,graphic, or line style which is to be used, and provides specialformatting information on how it is to be used. Multiple print regionsmay be defined and memorized in a promotional printer's coupon database.

A define print region command adheres to the follow syntax: delimiter<print_region_cmd_ltr> | <r_id> | <targ_mem> | <da_start> | <pa_start> |<da_len> | <pa_len> | <rot> | <just> |<obj_id> | <mul_1> | <mul_2> |<obj_att> | <pr_att> | <pr_data> |delimter

where: <r_id> =print region identifier. <targ_mem> =  target memorystorage. <da_start> =dot axis start position in dots.<pa_start> =  paper axis start position in dots. <da_len> =  dot axislength of print region in dots. <pa_len> =  paper axis length of printregion in dots. <rot> = rotation of strings or data within print region.<just> = justification of data within print region. <obj_id> =printobject identifier. Range 1 byte. This is the print object (barcode,font, line/box or graphic) used to format print the data from a printcommand. <mul_1> =Print object multiplier 1. For text, it is afont width multiplier. For barcodes, it indicates narrow bar width ormodulo bar width. For a line, this represents thickness of the line indots.

-   -   <mul₁₃ 2>=Print object multiplier 2. For text, this represents a        font height multiplier. For a barcode, it indicates a wide bar        width.    -   <obj_att>=object printing attributes. This contains special        instructions on how to treat the print objects within a print        region    -   <pr_att>=print region attributes. This contains special        instructions on handling of the print region. A ‘0’ indicates        text will be sent in a print batch command. A ‘1’ indicates use        text which follows in pr_data field for a print region. A ‘2’        indicates a print region will auto increment with each coupon in        a batch. The base value is stored in a pr data field. A ‘3’        indicates an auto-decrement print region which will        auto-decrement with each coupon in a batch. The base value is        stored in a pr_data field.    -   <pr_data>=permanently stored data which always appears in this        print region. This field contains stored text if requested by        entering a ‘2’ in <pr_att> field.

A library command is used to manage defined graphics. A library commandadheres to the following syntax: delimiter< library_cmd_ltr> |<lib_funct> | <mem> | <obj_id> | <mem_req> | <ld_file_size> | obj_datadelimiterwhere:

<lib_funct>=operation to perform: ‘A’—add object, enter download mode,‘D’—delete object.

-   -   <mem>=target memory in which to place the object being        downloaded.    -   <obj_id>=object identification. This is the object I.D. byte.    -   <mem_req>=memory usage specifier. For loading a graphic: size of        a graphic file. The library command header is terminated after        this field and obj_data is expected immediately following. For        deleting graphics: ‘G’ is used in this field.    -   <ld_file size>=file size indicator.    -   obj_data =object data (font or graphic) in appropriate format if        <lib_funct>=‘A’. Format for graphics: PCX.

FIG. 4 is a block diagram of coupon template field element storedpartially resident in a promotional gaming printer and partiallysupplied by a master promotional controller at the time of print andissue in accordance with an exemplary embodiment of the presentinvention. FIG. 4 illustrates how a master promotional controllerselects a type of coupon and transmits particulars, such as variabledata to be placed in fields in the coupon, for each print and issuanceevent. Values for the fields that make up a coupon 300 may be dividedinto two groups or sets. A resident variable data set 400 may be storedlocally in a promotional printer. The resident set of variable data mayinclude variable data such as: variable data for a text field containingan identifier of a casino 402; variable data for a barcode fieldidentifying a type of promotion 404; a template description used togenerate a graphic such as box variable data 406 or line variable data408; or an identifier or actual variable data for a graphic 410. Adynamic variable data set include variable data for fields havingvariable data that are stored in the promotional printer and are savedin a template definition for a particular coupon. Examples of variabledata in a dynamic variable data set include: text variable data for aplayer identifier 414; text variable data describing a promotion item416; and barcode variable data 418 for quantifying a value of apromotion for printing on the coupon.

Both variable data sets may be transmitted from a master promotionalcontroller 104 to a promotional printer in the form of communicationpackets. When a promotional printer receives a variable data set, thepromotional printer stores the variable data set for future use. Aresident variable data set includes variable data that may be reused forgenerating many coupons; therefore, a resident variable data set may bestored in he promotional printer for an extended period of time. Incontrast, a dynamic variable data set may be used for a short period oftime, perhaps for even a single generation of a single coupon. As such,the dynamic variable data set and static variable data set associated ina coupon may be transmitted to a promotional printer at different times.To retain association between the variable data sets, part of thecommunication packet issued by the master promotional controller mayinclude a reference 420 to a template definition so that the dynamicdata in the communication packet can be combined 422 with the staticfield data stored in a promotional printer to generate a complete coupon200.

Since it is possible to store all fields used in a coupon within thepromotional printer's memory, a master promotional controller may issuea complete coupon by simply sending a reference to a coupon so definedto generate a coupon in its entirety. It is also possible for a masterpromotional controller to offload the entire live communication burdenby sending a complete coupon database including triggers during off-peaktimes.

In one embodiment of a promotional printer, a promotional printer istriggered to print coupons from the promotional printer's internaldatabase under direct control of a master promotional controller thattriggers the issuance of a coupon and conveys any pertinent variableinformation associated with the coupon such as promotion type, facevalue of the coupon, date of expiration and the like.

FIG. 5 is a block diagram of an exemplary coupon stack and logicaltrigger matrix resident in a promotional printer in accordance with anexemplary embodiment of the present invention. As previously noted, apromotional printer may print a coupon in response to either internal orexternal event signals or trigger data. To respond to a trigger, apromotional printer includes a coupon selector logic module 500 thatanalyzes trigger data 502 as trigger data becomes available anddetermines which coupons should be printed in response to the triggerdata. Coupons, such as coupons 504, 506, and 508, are stored in a coupondatabase 510 as a stack. The stack of coupons are a plurality ofpredefined coupons that can generate a coupon 511 anytime a set oftrigger conditions to which a coupon is associated is satisfied. Thesetrigger conditions can operate independently or in logical combination.

Exemplary logical trigger data utilized in a promotional printer forinitiating generation of coupons includes: date 512, time of day 514,frequency of issuance of a particular coupon 516, time of play 524, andgame issued parameters 526 to the printer such as player identification,amount of money in place, duration of the current session of play andthe like. By utilizing the illustrated trigger matrix, it is possiblefor a promotional printer to issue coupons without any informationprovided by an master promotional controller at the time of a cash-outor cash-in by a player.

In one promotional printer in accordance with an exemplary embodiment ofthe invention, the promotional printer receives from a masterpromotional controller a coupon trigger database thereby enabling thepromotional printer to self-manage its couponing activity. The coupontrigger database may include different types of trigger controlparameters including: triggering a coupon generation anytime a cash outvoucher is printed; generating a coupon whenever a voucher for greaterthan, equal to, or less than a specified amount of money is issued;generating a coupon based on an identity of a player; generating acoupon based on a category or classification of a player related tofrequency of play or money volume; generating a coupon based on theduration of play of the gaming machine by a player; and generating acoupon anytime a player adds money or credits to a game in an amountgreater than, equal to, or less than a specified amount.

In another aspect of the invention, a component of the promotionalprinter's internal database includes a set of control parameters thatinstruct the promotional printer to select the type, quantity, andfrequency of coupons to create and issue related to any of the triggerslisted above. These control parameters may operate separately or incombination with each coupon in the database. Parameters that may beused include: a total quantity of a coupon being issued before thecoupon is retired from the coupon database; a frequency 518 of issuanceof a coupon based on the number of occurrences of specified triggerevents; a frequency of issuance of a coupon based on random odds 520,such as one in one hundred trigger events; a backup coupon or couponsshould a particular coupon fail to print for lack of satisfying itsspecified set of qualifiers; whether or not the coupon is issued basedon the time the trigger occurred; and whether the coupon is issued basedon the date the trigger occurred.

In one embodiment of promotional printer, a real time clock electronicdevice is included within the promotional printer for the purposes ofsupporting time dependent promotional activity as described above.

FIG. 6 is a process flow diagram of a trigger matrix process inaccordance with ane exemplary embodiment of the present invention. Atrigger matrix process 622 is used by a promotional printer to determineif a coupon should be generated and issued to a player. The triggermatrix process receives (624) variable data from a master promotionalcontroller. The trigger matrix process determines (628) if the variabledata includes a coupon trigger instructing the promotional printer toissue a coupon. If so, the trigger matrix process selects (630) anappropriate coupon to issue from a coupon database 510. The triggermatrix process then generates (632) a coupon 511 using the selectedcoupon template. In addition, the trigger matrix process may use aportion of the variable data received from the master promotionalcontroller to customize the coupon when the coupon is generated. Thetrigger matrix process may then store (633) coupon issuance statisticaldata (634) for later retrieval by the master promotional controller.

A trigger matrix process may also initiate issuance of a coupon even ifthe master promotional controller does not transmit a trigger to thepromotional printer. To do so, the matrix trigger process gets (635)trigger control parameters stored in the promotional coupon database 510that correspond to stored coupon templates in the promotional coupondatabase. The trigger matrix process then gets (638) gaming or vendingmachine and other internal data 636 and determines (640) if a couponshould be issued using the data and trigger control parameters. If thetrigger matrix process determines (642) that a coupon should begenerated, the trigger matrix process issues a coupon as previouslydescribed, this time selecting a coupon template using the triggercontrol parameters.

The promotional printer is a real-time device meaning that itcontinuously processes incoming trigger data and triggers. As such, thetrigger matrix process may be configured as an endless loop as indicatedby the start loop 644 and stop loop 646 symbols.

FIG. 7 is a sequence diagram of a coupon generating process inaccordance with an exemplary embodiment of the present invention. Amaster promotional controller 104 transmits coupon or variable data 600to a promotional printer 109. The promotional printer stores (602) thecoupon data for later use by the promotional printer in printing acoupon. As previously described, the coupon data may include coupontemplates, sets of dynamic and static variable data, trigger controlparameters, and entire promotional coupon databases.

A promotional printer may receive various triggers that initiategeneration of a coupon for a player 100. The master promotionalcontroller may transmit a promotional trigger (604) to the promotionalprinter. In response to the promotional trigger, the promotional printergenerates a coupon 606 for use by the player. The promotional printerthen stores (608) statistical data about the just generated coupon. Thepromotional printer may also receive a gaming or vending machine trigger610 from a machine controller 204 in a cashless enabled gaming orvending machine. In response to the gaming or vending machine trigger,the promotional printer generates a coupon 610 for use by the player.The promotional printer then stores (612) statistical data about thejust generated coupon. The promotional printer may also generate (614)an internal trigger on its own such that the promotional printergenerates a coupon 616 for use by the player. The promotional printerthen stores (618) statistical data about the just generated coupon.

Periodically, or at the request of the master promotional controller,the promotional printer may transmit the saved coupon statistical datato the master promotional controller for analysis and other types ofprocessing. The coupon tracking or statistical data may include detailssuch as quantities of specific types of triggers received, quantities ofeach type of coupon issued, and the times and dates when triggers werereceived and coupons were issued.

In a promotional printer in accordance with an exemplary embodiment ofthe present invention, the promotional printer accepts promotionaldatabase loads and transfers statistical data with the masterpromotional controller either through a main communication port used fornormally signaling pay out vouchers in the game, or through an auxiliaryport allowing the promotional printer's promotional activities to beconducted in series or in parallel with the promotional printer'scash-out voucher printing functions within the cashless enabled gamingmachine.

FIG. 11 is a sequence diagram of a promotional module using passivelistening to generate coupon triggers. In this embodiment, a promotionalmodule 210, either as a standalone device or incorporated intopromotional printer, listens in on communications between a machinecontroller 204 and a other devices, such as bill acceptor 206 andpromotional printer 109. The promotional module listens in on thecommunications and generates coupon triggers based on various attributesof the messages, such as frequency of the messages, content of themessages, originator of the messages, receiver of the messages, etc.Once the trigger is generated, it is used as previously described by thegaming or vending machine to generate a coupon.

In a specific example of such a process, the bill acceptor receives avoucher, currency, or other value bearing token from a player andtransmits a cash-in amount 1100 to the machine controller. Thepromotional module listens in on the communication between the billacceptor and the machine controller and receives an identical cash inamount 1102 message or signal. In response to the cash-in amount, themachine controller allows the player to play (1103) the gaming machine.Eventually, the player will stop playing the game and request acash-out. In response, the machine controller transmits a cash-outamount 1104 to the promotional printer. The promotional module receivesa copy of the cash-out signal or message 1106. The promotional modulemay then generate (1108) a trigger based on the cash-in and cash-outmessages that the promotional module listened in on but did not respondto.

FIG. 8 is an architecture diagram of an exemplary promotional module orprinter in accordance with an exemplary embodiment of the presentinvention. A promotional printer 109 includes a processor 701operatively coupled via a system bus 702 to a main memory 704. Theprocessor is also coupled to a storage device 708 via a storagecontroller 706 and the bus. The storage device includes stored programinstructions 724 and data 726 such as coupon variable data, coupontemplates, and coupon trigger control parameters. In operation, theprogram instructions implementing a promotional printer are stored onthe storage device until the processor retrieves the programinstructions and stores them in the main memory. The processor thenexecutes the computer program instructions stored in the main memory andoperates on the data stored in the storage device to implement thefeatures of a promotional printer as described above.

The processor is further coupled to a printer mechanism 718 through aprinter controller 702 via the bus. In operation, the processor executesthe program instructions to generate printer mechanism control signalsand transmits these signals to the printer mechanism via the bus andprinter controller. In response to the printer mechanism controlsignals, the printer mechanism prints coupons for use by a player.

The processor is further coupled to external input devices 722 by aninput device controller 720 via the bus. Example input devices includesensors that the promotional printer uses to detect proper printing of acoupon by the printer mechanism, coupon printer paper detectors, andreal time clocks. The processor receives input device signals from theinput devices via the input device controller and the bus and uses theinput device signals to detect the state of the promotional printer'senvironment.

The processor is further coupled to a network device 714 via a networkdevice controller 712 and the bus. The process uses the network deviceto communicate with other processing systems, such as a masterpromotional controller or a gaming or vending machine controller aspreviously described.

FIG. 9 is an architecture diagram of an exemplary master promotionalcontroller in accordance with an exemplary embodiment of the presentinvention. A master promotional controller includes a processor 901operatively coupled via a system bus 702 to a main memory 904. Theprocessor is also coupled to a storage device 908 via a storagecontroller 906 and the bus. In operation, program instructions 924implementing a master promotional controller are stored on the storagedevice until the processor retrieves the program instructions and storesthem in the main memory. The processor then executes the computerprogram instructions stored in the main memory to implement the featuresof a master promotional controller as described above.

The processor is further coupled to a network device 914 via a networkdevice controller 912 and the bus. The process uses the network deviceto communicate with other processing systems, such as a promotionalprinter or a gaming or vending machine controller as previouslydescribed.

Although this invention has been described in certain specificembodiments, many additional modifications and variations would beapparent to those skilled in the art. It is therefore to be understoodthat this invention may be practiced otherwise than as specificallydescribed. Thus, the present embodiments of the invention should beconsidered in all respects as illustrative and not restrictive, thescope of the invention to be determined by any claims supported by thisapplication and the claims' equivalents rather than the foregoingdescription.

1. A method of printing a promotional coupon, comprising: receiving by afirst device a first operational signal intended for a second device;and generating by the first device a coupon trigger using the firstoperational signal.
 2. The method of claim 1, wherein the first deviceand the second device are included in a gaming machine.
 3. The method ofclaim 1, wherein the first device and the second device are included ina vending machine.
 4. The method of claim 1, wherein: the first deviceis a promotional module; the second device is a bill validator; and thefirst operational signal is a cash-in signal.
 5. The method of claim 1,wherein: the first device is a promotional module; the second device isa printer; and the first operational signal is a cash-out signal.
 6. Themethod of claim 1, further comprising receiving by the first device asecond operational signal intended for a third device, whereingeneration of the trigger further comprises using the second operationalsignal.
 7. The method of claim 6, wherein: the first device is apromotional module; the second device is a bill validator; the thirddevice is a printer; the first operational signal is a cash-in signal;and the second operational signal is a cash-out signal.
 8. The method ofclaim 1, wherein the first operational signal is received by the firstdevice from a signal tap coupled to the second device.
 9. The method ofclaim 8, further comprising adding a device identifier to the firstoperational signal by the signal tap.
 10. The method of claim 1, whereinthe first operational signal is received by the first device from acommunications network coupled to both the first device and the seconddevice.
 11. A promotional module comprising: a processor; and a memorycoupled to the processor, the memory having program instructionsexecutable by the processor stored therein, the program instructionscomprising: receiving a first operational signal intended for a seconddevice; and generating a coupon trigger using the first operationalsignal.
 12. The promotional module of claim 11, wherein the promotionalmodule and the second device are included in a gaming machine.
 13. Thepromotional module of claim 11, wherein the promotional module and thesecond device are included in a vending machine.
 14. The promotionalmodule of claim 11, wherein: the second device is a bill validator; andthe first operational signal is a cash-in signal.
 15. The promotionalmodule of claim 11, wherein: the second device is a printer; and thefirst operational signal is a cash-out signal.
 16. The promotionalmodule of claim 11, the program instructions further comprising:receiving a second operational signal intended for a third device; andusing the second operational signal along with the first operationalsignal to generate the trigger.
 17. The promotional module of claim 16,wherein: the second device is a bill validator; the third device is aprinter; the first operational signal is a cash-in signal; and thesecond operational signal is a cash-out signal.
 18. The promotionalmodule of claim 11, wherein the first operational signal is receivedfrom a signal tap coupled to the second device.
 19. The promotionalmodule of claim 18, wherein the signal tap is operable to add a deviceidentifier to the first operational signal.
 20. The method of claim 1,wherein the first operational signal is received from a communicationsnetwork coupled to both the promotional module and the second device.